#ifndef PYTHONINTERPRETER_H
#define PYTHONINTERPRETER_H

#include "Interpreter.h" // Base class: Interpreter

//#include <Python.h>
#include <python2.5/Python.h>

#include <boost/python.hpp>
#include "boost/python/extract.hpp"

#define PI_PROMPT  ">>>"
#define PI_PROMPT2 "..."

class PythonInterpreter : public Interpreter
	{

	public:
		PythonInterpreter();
		~PythonInterpreter();

public:
        virtual void clearOutput() { mOutput.clear(); }
		virtual std::string getOutput() { return mOutput; }
		virtual std::string getPrompt() { return mPrompt; }
		virtual void insertLine(std::string&);
		
		int insertOutputFromPython();

	protected:
		std::string mCurrentStatement;
		std::string mOutput;
		std::string mPrompt;
	
//		PyObject *pName, *pModule, *pDict, *pFunc, *pValue;	

	};

#endif // PYTHONINTERPRETER_H
